package cn.xscrum.vtsp.domain;

import cn.xscrum.common.annotation.Excel;
import cn.xscrum.common.core.domain.BaseEntity;
import lombok.Data;

import java.util.Date;

/**
 * 志愿者信息对象 vtsp_volunteer
 *
 * @author Zxing
 * @date 2021-10-01
 */
@Data
public class EnrollVolunteer extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 报名唯一标识 */
    private Long enrollId;

    /** 活动唯一标识 */
    @Excel(name = "活动唯一标识")
    private Long activityId;

    /** 志愿者唯一标识 */
    @Excel(name = "志愿者唯一标识")
    private Long volunteerId;

    /** 岗位唯一标识 */
    @Excel(name = "岗位唯一标识")
    private Long postId;
    private String postName;

    /** 状态（1：待选拔；3：已录用；6：未录用；） */
    @Excel(name = "状态", readConverterExp = "1：待选拔；3：已录用；6：未录用；")
    private Integer enrollState;

    /** 备注 */
    @Excel(name = "备注")
    private String memo;

    /** 开放授权登陆信息唯一标识 */
    @Excel(name = "开放授权登陆信息唯一标识")
    private Long oauthId;

    /** 志愿者编号 */
    @Excel(name = "志愿者编号")
    private String volunteerCode;

    /** 志愿者姓名 */
    @Excel(name = "志愿者姓名")
    private String volunteerName;

    /** 志愿者学历（字典数据） */
    @Excel(name = "志愿者学历", readConverterExp = "字=典数据")
    private Integer volunteerDegree;

    /** 性别代码 */
    @Excel(name = "性别代码")
    private Integer sexType;

    /** 性别名称 */
    @Excel(name = "性别名称")
    private String sexName;

    /** 部门标识 */
    @Excel(name = "部门标识")
    private Long sectorId;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String sectorName;

    /** 志愿者学号 */
    @Excel(name = "志愿者学号")
    private String volunteerNo;

    /** 职务标识 */
    @Excel(name = "职务标识")
    private Long dutiesId;

    /** 职务名称 */
    @Excel(name = "职务名称")
    private String dutiesName;

    /** 出生日期 */
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date volunteerBirthday;

    /** 志愿者级时 */
    @Excel(name = "志愿者级时")
    private String volunteerLevel;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String volunteerPhone;

    /** 所在地 */
    @Excel(name = "所在地")
    private String volunteerArea;

    /** 所在地ID */
    @Excel(name = "所在地ID")
    private Long volunteerAreaid;

    /** 学院ID */
    @Excel(name = "学院ID")
    private Long academyId;

    /** 所在学院 */
    @Excel(name = "所在学院")
    private String volunteerAcademy;

    /** 电子邮箱 */
    @Excel(name = "电子邮箱")
    private String volunteerEmail;

    /** 证件类型 */
    @Excel(name = "证件类型")
    private Integer cardType;

    /** 证件号码 */
    @Excel(name = "证件号码")
    private String cardNo;

    /** 志愿者专业 */
    @Excel(name = "志愿者专业")
    private String volunteerProfession;

    /** 入队时间 */
    @Excel(name = "入队时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date volunteerDate;

    /** 所在班级 */
    @Excel(name = "所在班级")
    private String volunteerClass;

    /** 是否工作 */
    @Excel(name = "是否工作")
    private Integer isWork;

    /** 工作单位 */
    @Excel(name = "工作单位")
    private String workPlace;

    /** 工作方向 */
    @Excel(name = "工作方向")
    private String workTrend;

    /** 兴趣特长 */
    @Excel(name = "兴趣特长")
    private String volunteerSpecialty;

    /** 服务时长 */
    @Excel(name = "服务时长")
    private Long serveTime;

    /** 个人简介 */
    @Excel(name = "个人简介")
    private String volunteerSynopsis;


    /**
     *
     * 额外属性beginDate 和 endDate用于按创建的时间跨度搜索数据库中符合条件的数据（接收前端请求的参数）
     *
     */

    /** 开始时间 */
    private Date beginDate;

    /** 结束时间 */
    private Date endDate;
}
